Release notes
2023r10
Fix for folder check causing hanging file API service
Previously, the file API service (BAPIFileService) would check during every service loop if the folders defined on the service configuration were still accessible. (RN-4171)
However, in some cases, if the folders were not found, the service would not stop or crash but just remain in a hanging state where it could not be restarted or stopped.
This issue has been fixed. The folder check has been removed from every service loop since this also happens when executing the GET and POST calls.
2023r8
None as value for order header in GET /files call of file API
The file API contains a call to trigger the move of a file: GET /files
In case there are several files in the source folder specified on the file API service (RN-4171), an order parameter can be included in the header of the call to define the order in which the files should be taken. The possible values are oldest and newest. The service will then pick up the oldest or newest file in the folder until all files are processed.
Previously, when a large number of files (for example, more than 30.000) were in the source folder, the performance of the file API would decrease. This was because it retrieved all files in the folder to be able to sort them. Since the parameter was mandatory, there was no way to improve performance.
From this version, an additional value has been added to the parameter: none. This can be used when the order of transferring the files is not important.
When the order header is set to none, the order is undefined. Depending on the file system, this may be alphabetical but this is not guaranteed. A file is then taken from the folder each service loop. This prevents all files from being retrieved first and improves performance.
A new version of the YAML has been created to include the value.
2021r1.000
API version: v1.0.0
Addition of File API
From this version on, it is possible to transfer files using the File API
File API service
A File API service, i.e. BAPIFileService has been created. This service handles all file API calls and moves files around. Files can be converted to REST calls and REST calls can be converted to files. This service is REST aware.
In the FOLDERS group box, the folders to use for this integration and the number of retries need to be specified. When the maximum retry count has not been specified, it is zero by default.
The GET files call
-
This call returns the oldest or newest file, depending on the parameter in the call, from the Source folder. A check will be done to exclude files that are locked by other processes. This happens to avoid that files would be picked up that are being written or are in the process of being moved to a different folder. Then the file goes to the Processing folder.
-
In the header of the reply, the filename, the extension and the checksum are provided.
-
The GET API call returns the YAML file.
The POST acknowledge
-
This call identifies the file that needs to be processed, based on the filename and the checksum.
-
When the response is OK, the file will be moved to the Processed folder.
-
When the response is ERROR, after the specified number of retries, the file will be moved to the Failed folder.
-
-
This call is logged by the service. In the file API log entry browser, users can search for these file API logs.
File API log entry browser
A File API log entry browser has been created to search for file API logs.
File API log entry maintenance task
The maintenance service allows reducing the number of records stored in a log entry list by removing outdated entries. It contains maintenance tasks that can be configured to regularly clean up the list. A maintenance task can be created to clean up the file API logs as well with the following properties:
-
Number of days to keep: type or select for how many days the file API log entries will not be deleted. After the specified amount of days, the task will delete them.
-
File API interfaces: type or click to choose the file API interface.
Opening file API logs in REST exchange log entry navigator
The REST calls of the different REST interfaces can be retrieved from the REST exchange log entry browser. When opening such an entry for the file API, the navigator tries to fetch the entire response body. For some file formats, for instance PDF, this can give performance issues. Therefore, the response body will not be shown for file API calls.